package myjava.interfaccie;

// i nomi delle interfaccie sono per convenzione aggettivi che descrivono l'uso degli oggetti implementanti
public interface Bounceable {

   // niente variabili di istanza nelle interfaccie
   // solo constanti al massimo
   static final String BOUNCING_IS = "a lotta fun!!";

   // public and abstract are implied
   public abstract void bounce();
   
   // therefore I can omit them no worries!
   int getRadius();

   // [!] ANY OTHER COMBINATION of MODIFIERS WON'T COMPILE

   // method cannot be implemented in a interface!
   // you got abstract classes for that!

}